package com.scapegoat.pay.point.service.api;


import com.scapegoat.pay.common.core.page.PageBean;
import com.scapegoat.pay.common.core.page.PageParam;
import com.scapegoat.pay.point.service.entity.RpPointAccount;
import com.scapegoat.pay.point.service.exceptions.PointBizException;

import java.util.List;
import java.util.Map;

/**
 * 账户查询service接口
 *
 * @author walkman
 * @date 2017年10月17日 21:51:27
 */
public interface RpPointAccountQueryService {

    /**
     * 根据用户编号编号获取账户信息
     *
     * @param userNo 用户编号
     * @return
     */
    RpPointAccount getAccountByUserNo(String userNo) throws PointBizException;

    /**
     * 根据参数分页查询账户.
     *
     * @param pageParam 分页参数.
     * @param params    查询参数，可以为null.
     * @return AccountList.
     * @throws PointBizException
     */
    PageBean queryAccountListPage(PageParam pageParam, Map<String, Object> params) throws PointBizException;

    /**
     * 获取所有账户
     *
     * @return
     */
    List<RpPointAccount> listAll() throws PointBizException;
}